草庐IT

LLM 评估

全部标签

基于LLM的文档搜索引擎开发【Ray+LangChain】

Ray是一个非常强大的ML编排框架,但强大的功能伴随着大量的文档。事实上120兆字节。我们如何才能使该文档更易于访问?答案:使其可搜索!过去,创建自己的高质量搜索结果很困难。但通过使用LangChain,我们可以用大约100行代码来构建它。这就是LangChain的用武之地。LangChain为LLM相关的一切提供了一套令人惊叹的工具。它有点像HuggingFace,但专门针对LLM。有用于提示、索引、生成和总结文本的工具(链)。Ray虽然是一个令人惊叹的工具,但与它配合使用可以让LangChain变得更加强大。特别是,它可以:简单快速地帮助你部署LangChain服务。允许Chains与LL

JAVA - 表达式解析和评估库

我正在寻找一个JAVA库来解析和评估表达式。我搜索并尝试了一些库,例如Apache的JEXL和Jeval,但它们并不是我所需要的。我的要求:支持所有值类型(即int、double、boolean、String等)支持所有已知的数学和逻辑运算符(+、-、*、支持变量(没有任何特殊符号-例如在Jeval中变量a应该写成#{a}-对我来说不够好)支持自定义函数-具有类型强制和验证有什么建议吗? 最佳答案 尝试Janino.它是一个运行时内存编译器,可用作表达式计算器。也许这对您来说是正确的。

java - 也许 switchIfEmpty 惰性评估

如果源Maybe为空,我使用MaybeswitchIfEmpty方法提供替代结果。但是,我希望仅在源为空时才执行备用源,而在源不为空时不执行它。在下面的示例中,如果源返回非空Maybe,我想避免执行coSTLyFallback。当前的实现总是调用它,因为它需要传递给switchIfEmpty方法。Maybe.fromCallable看起来很有前途,但它只适用于不返回Maybe.empty的可调用对象。任何提示表示赞赏。如果switchIfEmpty接受一些延迟评估的Maybe提供商,那就太好了。publicclassStartRxMaybe{publicstaticvoidmain(S

LLM推理入门指南①:文本生成的初始化与解码阶段

随着生成式AI的火热发展,高企的语言大模型(LLM)推理性能和成本成为阻碍其大规模应用的关键挑战。LLM推理是指使用仅解码器Transformer模型生成词元,而大多数挑战及其相关的解决方法都来自这种特定的架构和用例。本系列文章将深入探讨LLM推理的不同层面及其挑战,同时,其中提供的有价值见解也适用于Transformer编码器模型的推理。通过本系列内容的学习,希望帮助读者了解与LLM推理密切相关的术语,比如键-值(KV)缓存、内存带宽限制(memory-bandwidthbound)等,以便理解推理优化(量化、融合kernel、模型架构修改等)和配置(批处理大小、使用哪种GPU等)所涉及的各

4万亿晶体管5nm制程,全球最快AI芯片碾压H100!单机可训24万亿参数LLM,Llama 70B一天搞定

全球最快、最强的AI芯片面世,让整个行业瞬间惊掉了下巴!就在刚刚,AI芯片初创公司Cerebras重磅发布了「第三代晶圆级引擎」(WSE-3)。性能上,WSE-3是上一代WSE-2的两倍,且功耗依旧保持不变。90万个AI核心,44GB的片上SRAM存储,让WSE-3的峰值性能达到了125FP16PetaFLOPS。这相当于52块英伟达H100GPU!不仅如此,相比于800亿个晶体管,芯片面积为814平方毫米的英伟达H100。采用台积电5nm制程的WSE-3,不仅搭载了40000亿个晶体管(50倍),芯片面积更是高达46225平方毫米(57倍)。专为AI打造的计算能力此前,在传统的GPU集群上,

让Sora和ChatGPT更可靠!只需这个知识价值定量评估新框架

为了让AI更像科学家,他们将人类知识注入大模型…正如教孩子解难题,你可以让他们自己反复试错找到正确方法,也可以教他们一些基础规则和技巧提高解题效率。类似地,将规则和技巧等人类知识融入到ChatGPT、Sora等基于数据驱动的AI模型训练中,有可能提高模型的效率和推理能力。△该图由AI模型StableDiffusionXL生成但关键问题是如何平衡数据和知识对模型的影响。为了解决这一问题,美国国家工程院院士张东晓、宁波东方理工大学(暂名)助理教授陈云天领衔,提出了一个新框架——它首次对知识的价值进行定量评估,从而增强深度学习模型的预测能力。实验证明,该框架可在物理、化学、工程学等不同领域有广泛的实

Java 优化器和冗余数组评估

这是一个关于Java优化的非常基本的问题。如果您有一个简单的for循环来遍历数组并在循环的header中使用array.length而不是之前对其进行评估,这样您就只执行一次(我几乎总是这样做):for(inti=0;i能否优化该语句,使JVM知道数组在循环期间是否发生变化,从而不必每次都重新计算array.length? 最佳答案 ifanotherthreadisnotmodifyingthearrayconcurrently,willarray.lengthbeeffectivelyevaluatedonlyonce,更关键的

java - 通过直接评估 lambda 来初始化变量

我想知道是否有一种方法可以在定义的同一表达式中直接调用lambda函数的.apply()或.get()。当我想初始化一个可能是私有(private)的变量时,我想到了这个问题,但我不能将它声明为final,因为该值是可以抛出异常的函数的返回值。例如,考虑Files.size(path):finals=Files.size(path);//codethatusess现在,如果我想为s使用默认值,如果有异常,我必须添加一个try/catch,但这是一个声明和不是表达式:s=0;try{s=Files.size();}catch(IOExceptione){}//codethatusess显

java - Java 中 "x==7"到 1(真)或 0(假)的快速恒定时间评估

我想将一个加密函数从C移植到Java。该函数必须在恒定时间内运行,因此没有条件分支(并且没有基于x的表查找)是允许的。原来的C代码是:intx,result;...result=(x==7);...因此,如果“x==7”,则“结果”设置为1,否则设置为0。“结果”变量随后用于进一步的计算。我现在正在寻找将其转换为Java的最佳方法。由于在Java表达式中计算结果为boolean值而不是整数,因此必须使用运算符模拟上述内容。我现在在用intx,result;...result=(1这对我来说很好,因为我的x在{0,...,15}范围内。(请注意,shift函数仅使用低5位,因此当x太大时

智能座舱软件性能与可靠性的评估和改进

作者 | 张旭海随着智能汽车的不断发展,智能座舱在性能与可靠性上暴露出体验不佳、投诉渐多的问题,本文从工程化的角度简述了如何构建智能座舱软件的评估框架,以及如何持续改进其性能和可靠性。一、智能座舱软件性能和可靠性表现不佳据毕马威发布的《2023智能座舱白皮书-聚焦电动化下半场》中的数据,中国汽车智能座舱市场规模呈逐年扩大之势,2022到2026的5年复合增长率将超过17%,预示着这一领域的蓬勃发展。随之而来的是智能座舱软件功能日益丰富,整体智能化程度显著提升。(来源:《2023智能座舱白皮书-聚焦电动化下半场》)在市场规模预测逐年扩大的同时,消费者对智能座舱软件的相关投诉占比也愈发显著。这主要